package cn.demoncat.util.websocket.entity;

import com.alibaba.fastjson.JSONObject;

import cn.demoncat.util.lang.JsonUtil;
import lombok.Data;

/**
 * WebSocket请求消息（onMessage.message）
 * 
 * @author 延晓磊
 *
 * @since 2019年7月1日
 */
@Data
public class WsMessage {
	
	/**
	 * 处理器（子URL）
	 */
	private String handler;
	/**
	 * 参数
	 */
	private JSONObject param;
	
	/**
	 * 接收消息
	 * 
	 * @param message	onMessage(message)
	 * @return
	 * 
	 * @author 延晓磊
	 *
	 * @since 2020年5月18日
	 */
	public static WsMessage build(String message) {
		return JsonUtil.parse(message, WsMessage.class);
	}

	/**
	 * 接收消息
	 *
	 * @param handler
	 * @param param
	 * @return
	 *
	 * @author 延晓磊
	 *
	 * @since 2020年5月18日
	 */
	public static WsMessage build(String handler, JSONObject param) {
		WsMessage msg = new WsMessage();
		msg.setHandler(handler);
		msg.setParam(param);
		return msg;
	}
}
